Greg Detre
Wednesday, September 11, 2002
Sept 9 |
Creating
technology/scenario matches |
Out
of Context (Lieberman, Selker); |
�Smart computers, intelligent agent software, and digital devices of the future will have to operate on data that is not explicitly given to them, data that they observe or gather for themselves. These operations may be dependent on time, place, weather, user preferences, or the history of interaction. In other words, context.�
faster computers are not necessarily smarter, easier or more productive � how do we make sure they actually improve people�s lives?
they argue that much of �intelligence� and �good design� can be boiled down to sensitivity to the context in which the artifacts are used
the context can include:
physical + conceptual environment, e.g. time, place, personal information/preferences, learning stage, history, the system/network itself
future computer systems � self-knowledgeable, i.e. they will know about their own context
current systems lack contextual awareness, hence their brittleness
traditionally, computer science has striven for context-independence
most computer science abstractions are black boxes where the output is completely determined by the input
context as an implicit input + output to the application
�Context can be considered to be everything that affects the computation except the explicit input and output
context is:
state of the user
state of the physical environment
state of the computational environment
history of user-computer interaction
the process is an iterative one, because the results of the system�s own context-dependent behaviour influence the context in future (feedback loop)
�One consequence of this definition of context is that what you consider context depends on where you draw the boundary around the system you are considering� � this affects what you consider to be explicit and implicit in the system
this boundary is sharp in HCI (explicit = explicit user interface actions)
but it�s much more blurred if we�re talking about an internal software module
computer scientists often use �reification� to redraw the boundaries so that what was formerly external to a given system becomes internal
abstraction is simplifying and therefore powerful
trade-off between the desire for abstraction and for context-sensitivity
they�re arguing that the pendulum has swung too far towards abstraction
�Since the world is complex, we often adopt a divide-and-conquer strategy at first, assuming the divided pieces are independent of each other. But a time comes when it is necessary to move on to understanding how each piece fits in its context�
�The reason to move away from the black box model is that we would like to challenge several of the assumptions that underlie this model:
(a) the assumption of explicit input � In user interfaces, explicit input from the user is expensive; it slows down the interaction, interrupts the user's train of thought, and raises the possibility of mistakes. � in many user interface situations, the goal is to minimize input explicitly provided by the user.
(b) Similarly, explicit output from a computational process is not always desirable, particularly because it places immediate demands on the user's attention � e.g. Ishii [Wisneski, et. al. 98] "ambient interfaces"
(c) Finally, there is the implicit assumption that the input-output loop is sequential. In practice in many user interface situations, input and output may be going on simultaneously, or several separate I/O interactions may be overlapped ��
how do we make our systems more context-aware?
cheaper hardware makes embedding computers
everywhere more practical � but what do they do with all the sensory input
etc.?
software agents are trying to reduce the complexity
of direct user-interface manipulation
the two trends are converging, with software agents in hardware taking a more proactive role
each software application establishes a context for user interaction
many user tasks are not implementable within a single application
considers some of the factors + context for a travel agent system
�the primary job of
the agent is to understand the intent of the user�
either the agent can ask for it, or infer it
getting context-sensitivity (piecing together partial information, picking up habits etc.) wrong is very noticeable + annoying
�generalization is the key problem for the agent to infer the intent of the user. Generalization means remembering what the user did, and removing some of the details of the particular context so that the same or analogous experience will be applicable in different situations.�
�This involves an essential tradeoff:
A conservative approach sticks closely to the concrete experience, and so achieves increased accuracy at the expense of restricting applicability to only those situations that are very similar to the original.
A liberal approach tries to do as much abstraction as possible, so that the result will be widely applicable, but at the increased risk of not being faithful to the user's original intentions.�
considers building a learning agent onto a conventional direct-manipulation graphical interface, such as a text or graphic editor. The agent records the actions performed by the user in the interface
�the "data description problem", which amounts to the problem of how to use context to decide how much to generalize the recorded program. The system often has to make the choice of whether to use extensional descriptions [describing the object according to its own properties] or intentional descriptions [describing the object according its role or relationships with other objects].�
xxx
so what then is context???
�The field of Human-Computer Interaction tells us that more careful user-centered design and testing of direct-manipulation interfaces will help� � what�s the difference between context-aware and HCI???
they say that most computer science abstractions are black boxes where the output is completely determined by the input � making a system aware of context presumably can either involve simply incorporating the context as extra input (involving much larger strings of parameters to input to each function, say), or perhaps by something a bit messier and more distributed (e.g. daemons that flag different situations and affect various other parts of the system, perhaps)
�One consequence of this definition of context is that what you consider context depends on where you draw the boundary around the system you are considering�??? � ah, cos it affects what you consider to be explicit and implicit in the system
they say that the boundary of the system is sharp in HCI (explicit = explicit user interface actions) � of course, even that gets complicated. consider the system that tracks mouse movements to guess where you�re going to go next. once the user gets wise (either consciously or unconsciously) to what the system is doing, the user will start to expand their repertoire of user interface actions (e.g. waving the mouse in a given direction), bringing so-called contextual clues back into the realms of explicit user interface actions
how can you �always be clear about where the boundaries of a system are�??? are they saying that at some stage, you may just have to make a boundary-decision and stick with it???
data description problem??? extensional vs intensional properties???
move towards signals and slots as a compromise between context-daemons and abstraction???
scribbles on page
has prof. selker heard of adaptive hypermedia, and ibm�s efforts to incorporate it into the MQSeries help system???
������ yes, he was the one that got Tony Davison interested in it
with the mouse tracking system, did it take into account different types of mouse, whether or not it had a wheel, one/two/three buttons, mobile mice etc., because those are factors that hugely affect how the mouse is used
what�s CrossPad (is it a PDA???)???
whatever happened to the Universal Plug??? it sounds great
what was the purpose of the Flexor??? is the Flexor meant to enhance social interaction/gestures??? surely not�
didn�t add a GSR (measures sweat, which results from so many things) sensor because it�s complicated
you can use BP to differentiate sweating from heat or anxiety
issues with drunkenness, because your core to periphery temperature differential changes
onset for emotions is a few seconds, time course can be a few minutes
the Digital Threshold seems intrusive � it�ll be too stupid, and by the time someone has arrived at a door, it�s too late � it�s impolite to turn them away, even digitally